home *** CD-ROM | disk | FTP | other *** search
- int codeMenu(void)
- {
- int retval = 0;
-
- printf("\fCode generation settings.\n");
- printf("-------------------------\n");
-
- printf("1. CPU: %s ", cpuname[cpuCode]);
- printf("2. Floating point: %s\n", fpuname[fpuCode]);
- printf("3. Code model: %s ", modelname[codemodel]);
- printf("4. Data model: %s\n", modelname[datamodel]);
- printf("5. %s\n\n", docompilename[compileMethod]);
-
-
- back_help_quit();
-
- switch(getch())
- {
- /* char buf[255];*/
-
- case '1': add(cpuCode, 5);
- updateLibList();
- break;
-
- case '2': add(fpuCode, 2);
- updateLibList();
- break;
-
- case '3': negate(codemodel); break;
-
- case '4': negate(datamodel);
- if(datamodel == SMALL)
- {
- addLib("vcs");
- addLib("amigas");
- }
- else
- {
- removeLib("vcs");
- removeLib("amigas");
- }
- break;
-
- case '5': add(compileMethod, 3); break;
-
-
- case 'h':
- case 'H': help(CODE); break;
-
- case ESC:
- case 'b':
- case 'B': retval = 1;
- break;
-
- case 'q':
- case 'Q': exit(0);
-
- }
-
- return(retval);
- }
-
-
- /*
- ** maintaining the different libs to be linked with when floating
- ** point is being used.
- */
- void updateLibList(void)
- {
- removeLib("mieee");
- removeLib("m881");
- removeLib("m040");
- removeLib("m060");
-
- if(fpuCode == 1)
- addLib("mieee");
-
- if(fpuCode == 2)
- {
- switch(cpuCode)
- {
- case 0: /* 000 */
- case 1: addLib("mieee"); break;/* 010 */
- case 2: /* 020 */
- case 3: addLib("m881"); break; /* 030 */
-
- case 4: /* 040 */
- case 5: addLib("m040"); break; /* 060 */
-
- /* WILL BE ADDED WHEN 060 is supported
- case 4: addLib("m040"); break; * 040 *
- case 5: addLib("m060"); break; * 060 *
- */
-
- }
- }
- }
-
-
-